/*************************/
/*****自定义组件事件******/
/*************************/
var iapp = getApp();
//自定义组件跳转的函数
function getDirectPath(e) {
  var url = e || '';
  if (url) {
    var mode = url.mode;
    var path = url.path || '';
    var info = url.info || '';

    if (mode == '2' || mode == '3') {
      // var url = apps.globalData.pathData[path];
      uni.navigateTo({
        url: path
      })
    } else if (mode == '4') {
      uni.switchTab({
        url: path
      })
    } else if (mode == '5') {
      let index = path.indexOf("#");
      let fuc_mode = path.substring(0, index);
      let fuc_data = path.substring(index+1);
      exeSetFuntion(fuc_mode,fuc_data,info);
    }
  }
}
//组件执行内置函数
function exeSetFuntion(path,data,info) {
  if (path == 'phone') {
    //拨打电话功能
    modDialPhone(data);
  } else if (path == 'location') {
    modToLocation(data,info);
  } else if (path == 'preview') {
    modPreview(data);
  } else if (path == 'appkey') {
    modAppkey(data);
  } else if (path == 'popup') {
    modPopup(data);
  }

}
//拨打电话功能
function modDialPhone(num) {
  uni.makePhoneCall({
    phoneNumber: num //仅为示例，并非真实的电话号码
  })
}
//导航功能
function modToLocation(data,info) {
  var location = data.split(',');
  location[0] = Number(location[0]);
  location[1] = Number(location[1]);
  info = info.slice(5);
  uni.openLocation({
    name: info,
    latitude: location[1],
    longitude: location[0]
  })
}
//图片预览功能
function modPreview(info) {
  uni.previewImage({
    current: info.img, // 当前显示图片的http链接
    urls: info.imgs,// 需要预览的图片http链接数组
  })
}

//弹窗功能
function modPopup(info){
  iapp.globalData.change = JSON.parse(info);
}

//切换appkey函数
function modAppkey(info){
  //先判断appkey存在
  if (info){
    //存在，先将之前的appkey存储起来
    if(!iapp.globalData.appFormerKey){
      iapp.globalData.appFormerKey = iapp.globalData.appKey;
    }
    iapp.globalData.appKey = info;
    //然后重新启动小程序
    iapp.shopInfo((res)=>{
      iapp.globalData.appTpl.setData({
        load_css: {
          display: 'flex'
        },//显示动态加载图片
      })
      iapp.globalData.appTpl.getTplData((res)=>{
        //切换成功，重置全局页面状态参数
        var page_status = [2, 2, 2, 2, 2];
        page_status[iapp.globalData.appTpl.properties.pageId - 1] = 3;
        iapp.globalData.appTplPageStatus = page_status;

        if (res.status == 'success' || res.status == 'empty'){
          iapp.globalData.appTpl.setData({
            load_css: {
              display: 'none'
            },//显示动态加载图片
          })
        }
      });
    });
  }
}

//模块输出类
module.exports.modulePath = getDirectPath;